Analog stepping motor control system

ABSTRACT

A control system for a stepping motor operating on the bang-bang principle in which opposing torque is exerted on the rotor of the motor as the rotor oscillates across its desired or home position. After the rotor has first passed its desired or home position, positioning of the rotor in a fine home mode is initially under the control of a digital encoder which, as the rotor passes from its point of maximum oscillation back toward its home position, causes the application of no torque, reverse torque, or forward torque, until the rotor again passes through its home position. This action may be under the control of simple hardware or may be under the control of a microcontrol program unit. At this point, analog fine position control circuitry takes over and so controls the current through the drivers of the motor that the rotor is accurately positioned in its home position.

United States Patent Hendrickson et al.

1111 3,845,378 1451 Oct. 29, 1974 ANALOG STEPPING MOTOR CONTROL3,466,520 9/1969 Aylikci 3l8/696 SYSTEM 3,505,579 4/1970 Leenhouts etal. 3,5l4,680 5/1970 Inventors: Kenneth son; S e armrzzs 6/l972 Crosby318/594 Keidl; Warren A. Lopour, all of Rochester, Mifm- PrimaryExaminerG. R. Simmons [73] Assignee: International Business MachinesAttorney or F'rm Keh Bleuer Cor ration, Armonk, NY. p0 [57] ABSTRACT[22] Flled: 1972 A control system for a stepping motor operating on [ll]Appl. No; 319,088 the bang-bang principle in which opposing torque isexerted on the rotor of the motor as the rotor oscillates across itsdesired or home position. After the [52] Cl 318/685 318/696 318/601rotor has first passed its desired or home position, po- 1 l I 318/603sitioning of the rotor in a fine home mode is initially 2 9" Gosh 1/00under the control of a digital encoder which, as the I Fla 0 can 18/6rotor passes from its point of maximum oscillation 3 56] back toward itshome position, causes the application of no torque, reverse torque, orforward torque, until [56] Reerences Cmd the rotor again passes throughits home position. This UNITED STATES PATENTS action may be under thecontrol of simple hardware or 3,241,015 3/l966 Allen 3l8/696 may beunder the control of a microcontrol program 3,328,658 6/1967 Thompson318/685 unit. At this point, analog fine position control cir- 5 10/1967Dunne 1 313/696 cuitry takes over and so controls the current through gg Y the drivers of the motor that the rotor is accurately Va 00 Ci a3,423,658 7/1969 Barrus r 318/685 posmoned m home posltlon' 3.458,?867/[969 Thompson 318/594 6 Claims, 29 Drawing Figures MOVE A MOVE CWPULSE s Q 6 l MODE Us SW 742 LATCH 1 HATCH S PULSE \m 1412L W A MOVE cowSLU omrc N i F 1422 (l=CW)(0=GCWl SS RESET, I

678 SS RESETZ m 1 3600 COUNT UP/ DOWN 540 MASTER POSITION CNTR I;ilillliliiil SPECIAL 85 COMPARE CIRCUITRY WAVE 542 SHAPINGm-111111111111 Mm DESIRED POSITION REGISTER PULSE (K) H Q 1411011011 56DJJJJJJJJH T 554 s sa L a R o 550 528 A HATCH CW PAIENIEDMIZQ m43.845378 sum 02 HF 22 MOVE vgo MOVE CW I PULSE MODE SLTU T42 LATCH 1MATCH s PULSE 729 1412 544 A MOVE ccw 132 IL SLU DIREC W T44 14221=cw)(o=ccw) SS RESET] I 678 M20 6ST? RESET 2 I] (cow) seoo COUNT UP/now 540 544 MASTER POSITION CNTR [J 552 HiHiHiiH SPECIAL 88 COMPARECIRCUITRY WAVE 542 SHAPiNG 534 otzs m so ptastTfovz el n n MATCH 550 (K)P. 54A6 I MATCH cw 556 fgJJJJUJJJHJ LsQ I 528 554 5E8 L 1 R 0 550 528 AMATCH cow FIG. 30

Pmmsnuuzs Im 3.8453378 sum on HF 22 I MODE I426 F LATCH 2 (DH) /,428 S Q43 I R 0 (AM) O A 0 ELM} l424 /738 I416 |4l7 /'4|8 I L P ANALOG FINE AI414 0 HOME MODE 5g; FT CONTROLLER SWITCH I420 g l 530 I SWITCH I604 612628 630 l I I l 744 s cw 3 MOVE CCW OR TORQUE LATCH I 618 R I 620 635 sQ LT 742 I R 0 A lMDVE cw OR 616 622 I 634 "642 636 638 I cw SET S 6 ccws50 TORQUE I I R LATCH I I 596 CCW 558 RESET IJ 552 F I FIG. 3C

PAIENIEflnm 29 m4 3, 845; 378

sum 06 0F 22 CURRENT SOURCE MODULATION INPUTS RESET 1 LOGIC 6 1410 72412s I 1|4h W $100K m A l A 108 T A 728 l Pr* 668 f m T A 0R DRIVER N0.ILINE 722 r I L84 m9 A 1 OR A I I w no DRIVER N0.2 um: H

DRIVER No.5 LINE Pmmmmm 3.845318 sum a? (If 22 FIG. 30 FIG. 3b FIG. 3cFIG. 3d FIG. 36 FIG. 3f

, FIG. 3

FIG. 3f

PAIENIEDINmIm 1845378 SHEET 08 OF 22 FIG. 4

1540 +.5 ROTOR POSITION ANALOG ENCODED INPDF DEsIRED W8 POSITION 0 2 41446 POSITION ERRDR SIGNAL 56 142D i VARIABLE 1454 ID CHOPPER PHOTO TRANDIFFERENTIAL CURRENT J4) DRIVERS NNPIIFIERR F SOURCE TOMODULATE SISTIORAMP LEAD FILTER TMODULATORTO v I443" I 145 I4 1452 F 1460 SIGNAL 1452+=FAssDEsIRED ANALOG 1458 POSITION REF WHEN w 1450 NIH IN =AHEAD OF HOLDNDDE POSITION FINAL TRACK COMPARATOR P SITION a HOLD 14M 1 I462 G lGATING FROM DIGITAL CONTROL TRACK PAIENIEIlum 29 an 3845Q 378 SHEET 030F 22 PHOTO TXR AMP T I 144a T I r s 7 I I AM I f N I502 I420 AMP 2 i H?1 l DIFF, AMPIILEAD FILTER -12 I I I T IF IF 1500 II I AMP SIGNAL TRACKANALOG IN 8IHOLD our 'i CARD 1462 I +HOLD I414 (JLJRACK FIG. 70

I I I I I PAIENIEDoms m4 3.845378 SHEET 10 0F 22 I456 1458 FULL WAVERECTIFIER VARIABLE CURRENT SOURCE I I504 l J -6 W wf T OUTPOSIIIOLCOMPARAIOL I454 I458 I4I4 FIG. 7b

PAIENIEDIIBI 29 I974 POSITION (DEGREES) T CLOCKWISE sw11c11 ,600

0111 5E1 ,612 1111011 Q) 6I6 OW RESET,626 I new sE1,ss4

00w RESET,642

TTCCW,638

TORQUE CW,668

TORQUE CCIILGT? MODE LATCH 1,

MODE LATCH 1 DELAYED ,1411

MODE LATCH 2 SHEET TYPICAL I IAIIEFORMS FOR DESIRED POSITION '50 I BOI+1 1100 I MIDI ELAY (UNDEFINED) ANALOG MODE STARTS HERE Pmmcnams m3.645; 319 saw 12 OF 22 APPROXIMATE TORQUE VS POSITION CURVES FOR MOTORUSED G 2 5 8 .I 8/ Al k m 00 TI I.

[L 8 n! 2 2 M u 8 E M w 00 DO Z 0/ 0 I 00 G 2 R 00 CL O I m 00 S I m m 8v R 4 n0 0 D 9U 8 0 w 8 I 1' w I a 0 6 DESIRED POSITION DESIRED POSITIONDESIRED POSITION OLOOKWISE FIG. l0

PAIENIEIlnmsm 31845378 SHEET 13 [If 22 922 924 950 1A 1B 10 f x REG YREG 920 4A M CONTROL 1 MAIN ALU 908 934 9 2 oil T P u T 2A 3 i STORE 916906 914 (MS) REG 923 H 5A 94 0 5B 50] F a 2D CNTRL C ADDR EXT ADDR LOCAL5 BY 1 BY 910 900 (ES) (LS) (C5) R 936 STORE STORE 952 922 ML 28 $20 94241 LINES TO AND FROM EXTERNAL DEVICES FlG.ll

PAIENTEU B61 29 I874 SHEEI 15 0F 22 11111000 1I1IITIALIZATI0II STEPS TINITIALIZE REGISTERS 0,1,3,4,5, 6H1 STEPS ANALOG FINEB,9,1I,I2,13,27,30, a 3A 110,111 HOME MODE {028 1026 1606 YES w sTARTBIT ON P STEPS EXT DEVICE TBR 112,115 REQUIRE cw R 1 CHECK ETERNALDEvIcE 608/ cw TQRQUE FOR OVERSPEED COND STEPS 92,93

LAST TIME THRU 4052/ 110 HES STEPS W0 CW 1054 TURN OFF S I ET E H4 Cw ORCCW ALL DRIVERS I REQUESTED M4 Now 1 I J STEPS +0111 6011 TEST FOR ANYINPUT 116, REMEMBER 4 4 BITS PRESENT STEPS 9697 I16 cw 00 YES 1612 l1052 STEP 98 SELECT STEP H9 CCW STEPIOO NU YES TORQUE BRANCH To BRANCHTO gg I DEcREMENT INcREMENT STEPS 120,121 REMEMBER ROUTINE ROUTINE 1616/CCW mas 59 1064 I I cw OR ccw MOVE STEPS 101,102 STEPS 122,125 REQUESTED1040 BIT ON 4624 100 YES T1 PS 6 ANALOG STEP 405 j REMEMBER REMEMBER\ITEPS HOLD BIT 124,425) cw ccw 128,4?9

i fi K1620 SELECT STEPS SELECT 1602 CW STEP 126 121 CW TO RQUE 01626 SETSTATUS BITs STEPS 1044 81 REGISTERS FOR 105,107 SLEW OPERATION 1618 0SET"DIGITAL" 1604/ MODE BIT STEP 108 0 WHAT DIREcTIoN wAs 5TEP409, 1046INCOMING BIT? 286-288 CW 00w HMS 3 @1050 INCREMENT ROUTINE 1056 1064UNCREMENT SLU CNTR STEP 136 1R0 INCREMENT MASTER 1066- POSITIONCNTR(MPC) STEP DOES MPC= 3600 STEPS 152-155 I 1072-LSELECT cw DRIVERcNTLIsTEPs 154-156 LOAD cw BOUNDARY USING BOUNDARY STEPS 1014- CNTRINFORMATION FOR TABLE 151-164 LOOK-UP B COMPARE T0 MPC {1E6 110[NCREMENT BOUNDARY STEPS DOES Bc=|442 STEPS CNTR (BC)81(BC+1) 165-161 NoYES 168-172 g 1078' SET BC=08 Bc+1)=1 STEPS 1080 1079 115-115 FHCW FIG.I4

CCWC-COUNTERCLOCKWISE 1143 DRIVER CONTROL DETERMINE STEPS 421,422 1290DESIRED TORQUE Iccw CW 0R NONE STE LOAD ccw cw OR NONE STEPS 450*451425424 DRIVER BITS 00 Cw 1292 I LOAD CW STEPS 425 426 ER BITS STEPS LOADCW 421*429 DRIVER BITS PAIENIEBmnzs I914 3. 845. 378

SHEEI 17 HF 22 FHCW-FINE HOME MODE CW A 1652 FINE HOME MODE 2 STEPS176,17?

YES NO STEPS DIGITAL 0R ANALOG 1084 .184 FINE HOME 2 ANALOG [DIGITALSTEPS ,QCEs SLU CNTR=0 1 185.190 1634 M0 YES STEPS Is 0.0. BIT RESETFINE HOME STEP 195,19 (ONCE ONLY) POSITION CNTR 191 ON 2 (FHPC) 1156 INOYES 1152 STEPS DOEs DIRECTION BIT STEPS 192494 FLOAT SHOW DEsIRED SETDIRECTIoN Q' 193 DIRECTION cRossED FTT.0 0..8ICCW CHOOSE IN CCwDIRECTION? STIIATUS BITS RESTORING 1160 TORQUE YES NO 1636 PS STEPS I P55 INCREMENT STEP 26? 270 1162 FHPC 261 I248 1164 SELECT STE CCw TORQUE252 6 IS FTT STEPS (FIRST TIME THRU) .264 BIT OFF 2 use HES N0 RESET 0.0STEPS 1168i (ONCE ONLY) 265,266

BIT

FIG. 15

PMENIEUIBWS 1011 3.845.378 SHEU 18 HF 22 EMT-ENTRY 201111 FOR FINE110115 MODE Z11 11 10 68 FIRST TIME THRU 2 STEPS 199,200

(FTT BIT) 110 +125 1194 LOW ORDER BIT STEPS 201-203 OF FHPC=1ORO ?,\H?2

YES 11001 1 1174 HI ORDER an 51132520 0205 OF FHPC=0 $111 1125 I SELECT5113p i W NO TORQUE 21 LOW ORDER TWO BITS STEPS 205 207 0F FHPc=1o2 1178NO YES STEPS DIVIDE FHPC BY 00 H1 ORDER STEPS 218-221 2 8 LOAD SWITCHB1Ts=o2 200-210 96 I110 YES SETZ STEPS 0o LOWORDER STEPS SET Two8.184182 211-216 222-225 BITS OF sw SET 5W LIMIT 4184 I110 {125 1501 1DO HI ORDER STEPS 5152s SELECT SWITCH LIMIT 224-225 255-254 cw TORQUE1202 1200 NO YES STEP 220 RESET COAST a FTT 86 SELECT STEPS (FIRST TIMETHRU) BOTH TORQUES 250-252 1190 BITS 1188 a SET (1 BIT l PATENTEIMTI 29m4 3. 84533 78 SHEEI 1s ur 22 INCREMENT FINE H'OME STEP 235 POSITIONCNTR 4206 STEPS 256,257L Is THE COAST BIT ON 1 MO I208\ HES STEPS246.247 IS THE cL SELECT STEP 258 (CHANGE LIMIT) ccw TORQUE BIT ON I2I4I T2I0 DD H0 LYES HAS sw LIMIT STEPS STEPS HAS sw LIMIT 2 BEEN REACHED?259-243 25525? BEEN REACHED 1246 N0 HES YES I NO sELEcT STEP SELECT 4 N0TORQUE 42l2 258 BOTH TORQUES \4218 T P I 244,245 SET CL 222 (CHANGELIMIT) 2 CWDC SELECT STEPS \4220 ccw TORQUE STEP 245 259260 I RESET CL(CHANGE LIMIT) STEP 249

1. In combination, an electric motor of the stepping type having astator with a set of discrete poles and a rotor having a set of discretepoles with electrical windings on one of said sets of poles so that saidrotor has a plurality of natural detent positions in which said rotorpoles are aligned with poles of said stator or are between poles of saidstator in a symmetrical relationship therewith when various of saidwindings are energized, means for energizing said windings to applytorque on said rotor in a foreward direction when supplied with aforward energization signal, means for energizing said windings to applytorque on said rotor in a reverse direction when supplied with a reverseenergization signal, a first emitter driven by said rotor effective toproduce output pulses as said rotor moves through successive incrementseach of Z* after passing through its desired or home position in theforward direction and producing the same output pulses at the same rotorpositions as the rotor moves back in the reverse direction, a secondemitter driven by said rotor effective to produce a gradually changingoutput signal as the rotor rotates having nodes which are substantiallyfarther apart than Z* with rotor rotation, a first control means underthe control of the output pulses of said first emitter for providingsaid reverse energization signal so as to thereby apply torque on saidrotor in the reverse direction with constant average currents in saidwindings when said rotor passes through its home position moving in theforward direction until the point of maximum oscillation of the rotorand the control means including counting means under the control of theoutput pulses of said first emitter so as to maintain the reverseenergization signal and the corresponding constant average currents insaid windings producing reverse rotor torque until the rotor returns toa reverse torque termination point which is between said point ofmaximum oscillation and said home position, said first control meansincluding means effective under the action of said counting means at aforward torque initiating point of rotor rotation lying between saidpoint of maximum oscillation of the rotor and said home position forproviding said forward energization signal and thereby applying torqueon said rotor in the forward direction with corresponding constantaverage currents in said windings as said rotor is moving back in thereverse direction from said point of maximum oscillation toward homeposition. second control means under the control of the graduallychanging output signal of said second emitter effective to modulate thecurrents in said windings while said forward energization signal isapplied so as to provide a forward torque on said rotor tending to movethe rotor to its home position With said currents in the windings beingso modulated that they are greater for greater spacing of said rotorwith respect to its home position and are less as the rotor is closer toits home position, and means for switching from said first control meansto said second control means under the action of said counting meanswhen said rotor is closer to its said home position than said forwardtorque initiating point of rotor rotation.
 2. The combination as setforth in claim 1, said counting means being so effective on saidswitching means that said switching means are responsive to a secondcrossing of said home position by said rotor as it travels in thereverse direction from its point of maximum oscillation so that saidsecond control means is then effective to provide modulated currentsthrough said windings under the control of said second emitter.
 3. Thecombination as set forth in claim 1, said counting means including amaster position counter responsive to the pulses from said first emitterfor keeping track of the position of said rotor as it rotates, a desiredposition register having a count therein indicative of said homeposition, means for comparing the content of said master positioncounter and said desired position register so as to produce a matchsignal when the content of the counter and register are the same, andmeans responsive to said match signal on the first crossing of said homeposition by said rotor travelling in the forward direction to rendersaid first control means effective for energizing said windings toproduce a reverse torque on the rotor after it initially crosses itshome position travelling in the forward direction, said switching meansbeing responsive also to said match signal when said rotor again crossesits home position travelling in the reverse direction for rendering saidsecond control means effective for modulating the current through saidwindings as aforesaid.
 4. The combination as set forth in claim 1, saidsecond control means including a track and hold circuit maintaining anoutput which corresponds with the output of said second emitter at thetime said rotor initially crosses its home position, and means forcontrolling the amount of current through said windings based on thedifference between the output of said second emitter and the output ofsaid track and hold circuit for thereby modulating the current throughsaid windings as aforesaid.
 5. The combination as set forth in claim 4,said means for controlling the amount of current through said windingsbased on the difference between the outputs of said second emitter andsaid track and hold circuit including a differential amplifier havingthe output signal from said second emitter and the output signal fromsaid track and hold circuit impressed thereon.
 6. The combination as setforth in claim 5, and including a variable current source modulatorhaving the output of said differential amplifier impressed on it andeffective for controlling the amount of current through said windingsbased on the difference between the outputs of said second emitter andsaid track and hold circuit.